package com.spark.lola.logistics.constant;

/**
 * @author: Zhi-peng wang
 * @date: 2020/04/24 12:24
 * 物流管理模块状态常量
 **/
public class LogisticsConstant {

    // 绑定驾驶员状态
    public static class CarIsBind {
        // 未绑定驾驶员
        public static final int N_BIND = 0;
        // 已绑定驾驶员
        public static final int Y_BIND = 1;
    }

    // 货运单来源类型
    public static class LocationType {
        // 纸厂
        public static final int PAPER = 0;
        // 其他
        public static final int OTHER = 1;
    }

    // 货运单来源类型
    public static class OrderOriginType {
        // 采购
        public static final int PURCHASE = 0;
        // 其他
        public static final int OTHER = 1;
    }

    // 货运单线路类型
    public static class OrderLineType {
        // 直达
        public static final int TO_CAR = 0;
        // 回头
        public static final int RETURN_CAR = 1;
    }

    // 是否空车
    public static class OrderIsEmpty {
        // 否
        public static final int NO = 0;
        // 是
        public static final int YES = 1;
    }

    public static class OrderStatus {
        // 待发货
        public static final int WAIT_SHIPMENTS = 0;
        // 已发货
        public static final int ALREADY_SHIPMENTS = 1;
        // 已收货
        public static final int ALREADY_RECEIVING = 2;
//        // 待核算
//        public static final int WAIT_CHECK = 3;
        // 代收款
        public static final int ALREADY_GATHERING = 3;
        // 已完成
        public static final int ALREADY_COMPLETE = 4;
        // 已作废
        public static final int ALREADY_INVALID = -1;

        public static String getLabel(int orderStatus) {
            String label = "";
            switch (orderStatus) {
                case 0:
                    label = "创建";
                    break;
                case 1:
                    label = "发车";
                    break;
                case 2:
                    label = "签收";
                    break;
//                case 3:
//                    label = "待核算";
//                    break;
                case 3:
                    label = "定价";
                    break;
                case 4:
                    label = "收款";
                    break;
                case -1:
                    label = "取消";
                    break;
            }
            return label;
        }
    }

    public static class ProcessFlag {
        // 历史
        public static final int HISTORY = 0;
        // 最新
        public static final int NEWEST = 1;
    }

    public static class ExpensesExists {
        // 不存在
        public static final int NO_EXISTS = 0;
        // 已存在
        public static final int YES_EXISTS = 1;
    }

    public static class ExpensesDrivingType {
        // 往
        public static final int TO = 0;
        // 返
        public static final int RETURN = 1;
        // 往返
        public static final int TO_RETURN = 1;
    }

    public static class IsRejected {
        // 正常
        public static final int NO = 0;
        // 驳回
        public static final int YES = 1;
    }

    public static class IsArchive {
        // 否
        public static final int NO = 0;
        // 是
        public static final int YES = 1;
    }

    public static class ExpensesStatus {
        // 待审核-财务
        public static final int WAIT_AUDIT = 0;
//        // 待物流主管审核
//        public static final int WAIT_LOGISTICS_AUDIT = 1;
        // 待财务审核
        public static final int WAIT_FINANCE_AUDIT = 1;
        // 待退款
        public static final int WAIT_REFUND = 2;
        // 已完成
        public static final int ALREADY_COMPLETE = 3;
        // 已作废
        public static final int ALREADY_INVALID = -1;

        public static String getLabel(int expensesStatus) {
            String label = "";
            switch (expensesStatus) {
                case 0:
                    label = "申请";
                    break;
//                case 1:
//                    label = "提交";
//                    break;
                case 1:
                    label = "核算";
                    break;
                case 2:
                    label = "结算";
                    break;
                case 3:
                    label = "确认";
                    break;
                case -1:
                    label = "取消";
                    break;
            }
            return label;
        }
    }

    public static class BiFindType {

        // 全部
        public final static int ALL = -1;

        // 天
        public final static int DAY = 0;

        // 周
        public final static int WEEK = 1;

        // 月
        public final static int MONTH = 2;

        // 季度
        public final static int QUARTER = 3;

        // 年
        public final static int YEAR = 4;

    }

    public static class CarWarn {

        // 行驶证
        public final static int CAR_LICENSE = 0;

        // 交强险
        public final static int COMPULSORY_INSURANCE = 1;

        // 商业险
        public final static int COMMERCIAL_INSURANCE = 2;

        // 年检
        public final static int INSPECTION = 3;

    }

    // 车辆类型
    public static class CarType {
        // 自营
        public static final int SELF_CAR = 0;
        // 外调
        public static final int OTHER_CAR = 1;
    }

}
